

//TODO a(64)
function a64(module, exports, a) {
    function i() {
    }

    var s = a(23), r = a(2), n = a(21), o = a(6), l = a(3);
    l.extend(i, s);
    var d, h = {
        init: function () {
            this.playerData = this.manager.playerData, this.parentEl = o("#" + this.playerData.config.cont + " .hv_box"), r.isPC && (this.containerFullscreenObj = l.checkFullScreenFn(this.parentEl[0]), this.parentEl.on("webkitfullscreenchange", function () {
                document.webkitIsFullScreen ? (this.parentEl.addClass("hv_fullscreen"), this.manager.listener.set(n.FULLSCREEN_STATE, 1)) : (this.parentEl.removeClass("hv_fullscreen"), this.manager.listener.set(n.FULLSCREEN_STATE, 0)), this.manager.evt.trigger(n.EVENT.RESIZE)
            }, this)), this.onWindowResize = l.bind(c, this)
        }, changeFullScreen: function (e) {
            var t = e.targetState, a = e.type;
            switch (a) {
                case"custom":
                    0 == t && this.manager.curVideo.changeFullScreen(!1), this.manager.listener.set(n.FULLSCREEN_STATE, t);
                    break;
                case"normal":
                    if (1 == t) {
                        document.addEventListener("touchmove", this.preventDefault, !1), window.scrollTo(0, -1), this.parentEl.addClass("hv_fullscreen");
                        for (var i = this.parentEl[0].parentNode; "body" != i.tagName.toLowerCase();) {
                            var s = i.style.position;
                            if (s && "static" != s) i.defaultPosition = s, i.style.position = "static"; else {
                                var o = document.defaultView.getComputedStyle(i);
                                "static" != o.position && (i.style.position = "static")
                            }
                            i = i.parentNode
                        }
                        this.onWindowResize(), window.addEventListener("resize", this.onWindowResize, !1)
                    } else {
                        this.manager.curVideo.changeFullScreen(t), document.removeEventListener("touchmove", this.preventDefault, !1), this.parentEl.removeClass("hv_fullscreen");
                        for (var i = this.parentEl[0].parentNode; "body" != i.tagName.toLowerCase();)i.style.position = i.defaultPosition || "", i = i.parentNode;
                        this.parentEl[0].style.width = "", this.parentEl[0].style.height = "", window.removeEventListener("resize", this.onWindowResize, !1)
                    }
                    this.manager.listener.set(n.FULLSCREEN_STATE, t), this.manager.evt.trigger(n.EVENT.RESIZE);
                    break;
                case"system":
                default:
                    t = 0 == t ? 0 : 1, r.isPC ? t ? this.containerFullscreenObj.requestEl[this.containerFullscreenObj.requestFn]() : this.containerFullscreenObj.cancelEl[this.containerFullscreenObj.cancelFn]() : this.manager.curVideo.changeFullScreen(t)
            }
        }, preventDefault: function (e) {
            e.preventDefault()
        }
    }, c = function () {
        var e = window.innerWidth, t = window.innerHeight;
        this.parentEl.width(e), this.parentEl.height(t), clearTimeout(d), d = setTimeout(l.bind(function () {
            this.manager.evt.trigger(n.EVENT.RESIZE)
        }, this), 200)
    };
    l.merge(i.prototype, h), module.exports = i
}
